<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>设备ID使用示例</title>
    <style>
        body {
            font-family: Arial, sans-serif;
            padding: 20px;
            background: #f5f5f5;
        }
        .container {
            max-width: 800px;
            margin: 0 auto;
            background: white;
            padding: 30px;
            border-radius: 10px;
            box-shadow: 0 2px 10px rgba(0,0,0,0.1);
        }
        .example {
            margin: 20px 0;
            padding: 15px;
            border: 1px solid #ddd;
            border-radius: 5px;
            background: #f9f9f9;
        }
        .url {
            background: #e3f2fd;
            padding: 10px;
            border-radius: 4px;
            font-family: monospace;
            margin: 10px 0;
            word-break: break-all;
        }
        .topic {
            background: #f3e5f5;
            padding: 10px;
            border-radius: 4px;
            font-family: monospace;
            margin: 10px 0;
        }
        .btn {
            display: inline-block;
            padding: 10px 20px;
            margin: 5px;
            background: #007bff;
            color: white;
            text-decoration: none;
            border-radius: 4px;
            transition: background 0.3s;
        }
        .btn:hover {
            background: #0056b3;
        }
        .note {
            background: #fff3cd;
            border: 1px solid #ffeaa7;
            padding: 15px;
            border-radius: 4px;
            margin: 20px 0;
        }
    </style>
</head>
<body>
    <div class="container">
        <h1>设备ID使用示例</h1>
        
        <div class="note">
            <strong>说明：</strong>通过URL参数 <code>deviceid</code> 可以为不同的显示设备指定不同的MQTT订阅主题，实现多设备独立控制。
        </div>

        <h2>使用方法</h2>
        
        <div class="example">
            <h3>1. 默认使用（无设备ID）</h3>
            <p>订阅主题：<span class="topic">display/control</span></p>
            <a href="index.html" class="btn" target="_blank">打开主页面</a>
            <a href="test-client.html" class="btn" target="_blank">打开测试客户端</a>
        </div>

        <div class="example">
            <h3>2. 指定设备ID</h3>
            <p>URL格式：<span class="url">index.html?deviceid=设备ID</span></p>
            <p>订阅主题：<span class="topic">display/control/设备ID</span></p>
            
            <h4>示例链接：</h4>
            <a href="index.html?deviceid=room101" class="btn" target="_blank">会议室101</a>
            <a href="index.html?deviceid=room102" class="btn" target="_blank">会议室102</a>
            <a href="index.html?deviceid=lobby" class="btn" target="_blank">大厅显示屏</a>
            <a href="index.html?deviceid=entrance" class="btn" target="_blank">入口显示屏</a>
        </div>

        <div class="example">
            <h3>3. 对应的测试客户端</h3>
            <p>测试客户端也需要使用相同的设备ID才能发送消息到正确的主题：</p>
            <a href="test-client.html?deviceid=room101" class="btn" target="_blank">测试会议室101</a>
            <a href="test-client.html?deviceid=room102" class="btn" target="_blank">测试会议室102</a>
            <a href="test-client.html?deviceid=lobby" class="btn" target="_blank">测试大厅显示屏</a>
            <a href="test-client.html?deviceid=entrance" class="btn" target="_blank">测试入口显示屏</a>
        </div>

        <h2>MQTT主题结构</h2>
        <div class="example">
            <h3>主题层级</h3>
            <ul>
                <li><strong>默认主题：</strong> <code>display/control</code></li>
                <li><strong>设备特定主题：</strong> <code>display/control/设备ID</code></li>
            </ul>
            
            <h4>示例：</h4>
            <ul>
                <li><code>display/control</code> - 默认主题，所有设备都会接收</li>
                <li><code>display/control/room101</code> - 仅会议室101接收</li>
                <li><code>display/control/room102</code> - 仅会议室102接收</li>
                <li><code>display/control/lobby</code> - 仅大厅显示屏接收</li>
            </ul>
        </div>

        <h2>使用场景</h2>
        <div class="example">
            <h3>多设备独立控制</h3>
            <p>在同一个MQTT服务器上，可以为不同的显示设备指定不同的设备ID：</p>
            <ul>
                <li>会议室A：<code>index.html?deviceid=meeting_room_a</code></li>
                <li>会议室B：<code>index.html?deviceid=meeting_room_b</code></li>
                <li>大厅显示屏：<code>index.html?deviceid=lobby_display</code></li>
                <li>入口显示屏：<code>index.html?deviceid=entrance_display</code></li>
            </ul>
            
            <p>这样每个设备只会接收发送到自己主题的消息，实现独立控制。</p>
        </div>

        <h2>注意事项</h2>
        <div class="note">
            <ul>
                <li>设备ID建议使用英文、数字和下划线，避免特殊字符</li>
                <li>设备ID区分大小写</li>
                <li>测试客户端必须使用相同的设备ID才能正确发送消息</li>
                <li>可以在MQTT客户端中订阅 <code>display/control/#</code> 来监听所有设备的消息</li>
            </ul>
        </div>
    </div>
</body>
</html> 